#ifndef _DriverOTA_H_
#define _DriverOTA_H_


typedef struct
{
    char versionSoft[16];   /* 软件版本 */
    char versionHard[16];   /* 硬件版本 */
    uint8_t hash[32];       /* Hash校验值 */
    uint32_t crc;           /* 固件CRC_Modbus校验值 */
    uint32_t size;          /* 固件大小 */

    uint32_t lengthCrc;     /* 已接收固件CRC_Modbus校验值 */
    uint32_t length;        /* 已接收固件大小 */
} OTAInfoType;


int8_t cOTADatasWrite(uint32_t uiAddr, void *pvDatas, int32_t iLength);
int8_t cOTAStart(void);
int8_t cOTAStop(void);
int8_t cOTAError(void);
int8_t cOTAInfoUpdate(void);
int8_t cOTAInit(void);

OTAInfoType *ptypeOTAInfoGet(void);


#endif
